1
Fondamenti del testo: Caratteri vs Stringhe in Julia
AI015Lesson 5
00:00

In Julia, il testo viene gestito tramite due entità architetturali distinte: il Carattere a 32 bit primitivo e la stringa immutabile, stringa codificata in UTF-8. A differenza di altri linguaggi in cui un carattere è una stringa di lunghezza uno, Julia considera Char un tipo numerico di prima classe che rappresenta un punto di codice Unicode.

1. Gerarchia dei tipi e memoria

Concreto Char è un tipo primitivo a $32$ bit (sottotipo di AbstractChar). Il tipo incorporato Stringa (sottotipo di AbstractString) supporta l'intero intervallo Unicode. Mentre un Char ha dimensione fissa, Stringa ha larghezza variabile; i singoli caratteri occupano da 1 a 4 byte, con il punto di transizione per ASCII che si verifica a $0x80(128)$.

2. Arithmetica e confronto

Poiché Char rappresenta un punto di codice numerico, puoi eseguire operazioni aritmetiche. Usa Int('a') per ottenere 97 e Char(97) per ottenere 'a'. I confronti lessicografici sono supportati: 'X' < 'x' è vero perché le lettere maiuscole precedono quelle minuscole nell'Unicode.

CaratteristicaCarattere ('a')Stringa ("a")
TipoCharStringa
DimensioneFissa a $32$ bitVariabile UTF-8
MutabileNon applicabile (tipo valore)No (immutabile)

Confronti concatenati come 'A' <= 'X' <= 'Y' valutano a vero o falso in base all'ordine Unicode.

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>